package com.kinghood.infrastructure.util.excel;

import lombok.Data;

import java.util.ArrayList;
import java.util.Collection;
import java.util.List;

/**
 * 动态导出数据
 *
 * @author jp
 * @date 2023/12/19
 */
@Data
public class ExcelExportWriter {
    /**
     * 文件名称
     */
    private String fileName;

    /**
     * sheet 名称数组
     */
    private String sheetName;

    /**
     * 动态列名称
     * 描述：
     * 第1个List 代表：表体行数据（集合）
     * 第2个list 代表：表体列数据（集合）
     */
    private List<List<String>> heads;


    /**
     *
     * （动态表体数据） 分为2层
     * 1    2   3
     * 5    6   9
     * List<List<Object>>
     */
    private Collection<?> datas;

    /**
     * 用list设置表头
     *
     * @param headparam 头参数
     * @author jp
     * @date 2023/12/19
     */
    public void setOneLineHeads(List<String> headparam) {
        List<List<String>> heal = new ArrayList<>();
        for (String head : headparam) {
            List<String> h = new ArrayList<>();
            h.add(head);
            heal.add(h);
        }
        this.heads = heal;
    }
}
